
import vue from "vue";
import cache from "@/utils/cache";

export default {
  getUserInfo: function (data) {
    const userInfo = cache.get("USER_INFO") ?  JSON.parse(cache.get("USER_INFO")) : {};
    if (userInfo?.id) {
      return process.env.ENV_TYPE + '-' + userInfo.socialId
    } else {
      return 0;
    }
  },
  // h5 友盟埋点
  h5Track: function (data) {
    const { aplus_queue } = window;
    aplus_queue.push({
      action: "aplus.record",
      arguments: [data.name, "CLK", data.params],
    });
  },

  //微信小程序 友盟埋
  wxTrack: function (data) {
    vue.prototype.$uma.trackEvent(data.name, data.params);
  },

  trackFn(trackData) {
    try {
      // #ifdef MP-WEIXIN
      this.wxTrack(trackData);
      // #endif
      // #ifdef H5
      this.h5Track(trackData);
      // #endif
    } catch (error) {}
  },

  // 登录埋点
  loginTrack: function (type) {
    try {
      let trackData = {
        name: "Um_Event_LoginSuc",
        params: {
          // #ifdef MP-WEIXIN
          Um_Key_LoginType: "微信小程序",
          // #endif
          // #ifdef H5
          Um_Key_LoginType: type ? type : 'h5',
          // #endif
          Um_Key_UserID: this.getUserInfo(),
        },
      };
      this.trackFn(trackData);
    } catch (error) {}
  },

  //页面浏览事件

  pageViewTrack(data) {
    try {
      let trackData = {
        name: "Um_Event_PageView",
        params: {
          ...data,
          Um_Key_UserID: this.getUserInfo(),
        },
        //   params: {
        //     Um_Key_PageName: "", //页面名称
        //     Um_Key_PageCategory: "",
        //     Um_Key_SourcePage: "",
        //     Um_Key_SourceLocation: "",
        //     Um_Key_UserID: "",
        //     Um_Key_UserLevel: "",
        //     Um_Key_Duration,
        //   },
      };
      this.trackFn(trackData);
    } catch (error) {}
  },

  //页面点击事件
  pageClickTrack(data) {
    try {
      let trackData = {
        name: "Um_Event_ModularClick",
        params: {
          ...data,
          Um_Key_UserID: this.getUserInfo(),
        },
        //   params: {
        //     Um_Key_ButtonName: "", //按钮名称
        //     Um_Key_SourcePage: "", // 来源页面
        //     Um_Key_SourceLocation: "", // 所属位置
        //     Um_Key_UserID: "", //用户ID
        //     Um_Key_UserLevel: "",// 用户等级
        //   },
      };
   
      this.trackFn(trackData);
    } catch (error) {
      
    }
  },
};
